package cn.iocoder.yudao.module.vos.controller.admin.secretrechargerecord.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import javax.validation.constraints.*;
import java.math.BigDecimal;

@Schema(description = "管理后台 - 密钥充值记录新增/修改 Request VO")
@Data
public class SecretRechargeRecordSaveReqVO {

    @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "23995")
    private Long id;

    @Schema(description = "租户ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "21005")
    @NotNull(message = "租户ID不能为空")
    private Long rechargeTenantId;

    @Schema(description = "对应的密钥ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "9133")
    @NotNull(message = "对应的密钥ID不能为空")
    private Long secretId;

    @Schema(description = "充值金额(元)", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "充值金额(元)不能为空")
    private BigDecimal rechargeAmount;

    @Schema(description = "充值前余额(元)", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "充值前余额(元)不能为空")
    private BigDecimal beforeBalance;

    @Schema(description = "充值后余额(元)", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "充值后余额(元)不能为空")
    private BigDecimal afterBalance;

    @Schema(description = "备注", example = "随便")
    private String remark;

}